#ifndef SHADEREFFECT_H_
#define SHADEREFFECT_H_

#include "Header.h"

class ShaderEffect
{
public:
	char *effectName; // Name of shader file
	pchar *uniformNames; // List uniform variable name is used
	int effectId; // Shader index
	char *vertexSource; // Vertex shader file content
	char *fragmentSource; // Fragment shader file content
	int *uniformsId; // Uniform reference Id

	ShaderEffect();
	virtual ~ShaderEffect();

	virtual int operator[](const int uniformIndex);    
	virtual void FreeCacheData();
};

#endif
